home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / mint / shells / bashsrc.zoo / alias.h < prev    next >
C/C++ Source or Header  |  1991-06-05  |  1KB  |  45 lines

  1. /* alias.h -- structure definitions. */
  2.  
  3. #ifndef _ALIAS_
  4. #define _ALIAS_
  5.  
  6. #ifndef whitespace
  7. #define whitespace(c) (((c) == ' ') || ((c) == '\t'))
  8. #endif
  9.  
  10. #ifndef savestring
  11. #define savestring(x) (char *)strcpy (xmalloc (1 + strlen (x)), (x))
  12. #endif
  13.  
  14. typedef struct {
  15.   char *name;
  16.   char *value;
  17. } ASSOC;
  18.  
  19. #ifndef NULL
  20. #define NULL 0x0
  21. #endif
  22.  
  23. /* The list of known aliases. */
  24. extern ASSOC **aliases;
  25.  
  26. /* Scan the list of aliases looking for one with NAME.  Return NULL
  27.    if the alias doesn't exist, else a pointer to the assoc. */
  28. extern ASSOC *find_alias ();
  29.  
  30. /* Return the value of the alias for NAME, or NULL if there is none. */
  31. extern char *get_alias_value ();
  32.  
  33. /* Make a new alias from NAME and VALUE.  If NAME can be found,
  34.    then replace its value. */
  35. extern void add_alias ();
  36.  
  37. /* Remove the alias with name NAME from the alias list.  Returns
  38.    the index of the removed alias, or -1 if the alias didn't exist. */
  39. extern int remove_alias ();
  40.  
  41. /* Return a new line, with any aliases substituted. */
  42. extern char *alias_substitute ();
  43.  
  44. #endif  /* _ALIAS_ */
  45.